#ifndef LUA_HOOKS_H
#define LUA_HOOKS_H

#include <stdexcept>
#include <map>

#include "fontmaterial.h"
#include "lua_util.h"
#include "gameinterface.h"
#include "draw.h"

int LUA_DrawSetColor255( lua_State * );
int LUA_DrawSetColor( lua_State * );
int LUA_DrawRect( lua_State * );
int LUA_DrawText( lua_State * );
int LUA_DrawTexture( lua_State * );

int LUA_loadmap( lua_State * );
int LUA_include( lua_State * );
int LUA_getticks( lua_State * );
int LUA_getdps( lua_State * );
int LUA_getcamerapos( lua_State * );
int LUA_getstringsize( lua_State * );
int LUA_setcamerapos( lua_State * );
int LUA_lockcamera( lua_State * );
int LUA_unlockcamera( lua_State * );
int LUA_getplayer( lua_State * );
int LUA_getpreviousmap( lua_State * );
int LUA_getcurrentmap( lua_State * );
int LUA_setgamerule( lua_State * );
int LUA_getmousepos( lua_State * );
int LUA_bindtexture( lua_State * );

int LUAENGINE_StartBattle( lua_State * );
int LUAENGINE_GetBattlePlayer( lua_State * );
int LUAENGINE_AddBattleStats( lua_State * );
int LUAENGINE_BindGameCameraToEnt( lua_State * );
int LUAENGINE_LockBattle( lua_State * );
int LUAENGINE_UnlockBattle( lua_State * );
int LUAENGINE_EndBattle( lua_State * );

#endif
